セキュリティグループで TCP ですべてのポートを解放していますが ping が通らないのは何故か教えてください
困っていた内容
EC2 に対して ping が通りません。
セキュリティグループで TCP ですべてのポートを解放しています。
ping を通す方法を教えてください。
どう対応すればいいの?
ping は ICMP プロトコルを使用しています。
そのため、ICMP プロトコルの通信許可をインバウンドルールに追加してください。
やってみた
プライベートサブネットに EC2 を 1 つ、パブリックサブネットに EC2 を 1 つ起動します。
どちらの EC2 インスタンスも、セキュリティグループのアウトバウンドルールは全開放です。
プライベートサブネットの EC2 について、セキュリティグループのインバウンドルールで、TCP ですべてのポート、すべての IP アドレスからのアクセスを許可します。
パブリックサブネットの EC2 について、セキュリティグループのインバウンドルールで、SSH 22 番ポートのみ、特定の IP アドレスからのアクセスを許可します。
パブリックサブネットの EC2 へ SSH ログインし、プライベートサブネットの EC2 のプライベート IP に対して ping コマンドで疎通確認をします。
$ ping 172.31.48.221 PING 172.31.48.221 (172.31.48.221) 56(84) bytes of data. ^Z [1]+ Stopped ping 172.31.48.22
ICMP プロトコルの通信許可がないため、返答がありません。
プライベートサブネットの EC2 について、セキュリティグループのインバウンドルールで、ICMP での通信を許可します。
再度、ping コマンドを実行します。
$ ping 172.31.48.221 PING 172.31.48.221 (172.31.48.221) 56(84) bytes of data. 64 bytes from 172.31.48.221: icmp_seq=1 ttl=255 time=0.165 ms 64 bytes from 172.31.48.221: icmp_seq=2 ttl=255 time=0.186 ms 64 bytes from 172.31.48.221: icmp_seq=3 ttl=255 time=0.178 ms 64 bytes from 172.31.48.221: icmp_seq=4 ttl=255 time=0.167 ms 64 bytes from 172.31.48.221: icmp_seq=5 ttl=255 time=0.196 ms ・・・・
返答がありました。
他の注意点
Windows の場合、ping を応答する設定になっていないことが原因の場合があります。
NACL/セキュリティグループでRDP,ICMPを許可しています。RDPは通りますがPingは応答しません。どうすれば疎通できますか? | DevelopersIO